package com.crane.oss.school.dao;


import com.crane.oss.app.bean.req.AppBindingStudentReq;
import com.crane.oss.app.bean.resp.AppStudentInfo;
import com.crane.oss.school.bean.resp.ClassesInfoResp;
import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.crane.oss.school.bean.resp.ClassesInfoWebDto;
import com.crane.oss.school.model.ClassesInfo;
import org.apache.ibatis.annotations.Param;


/**
 * 班级信息表
 *
 * @author zhenxing.pi
 * @email ccsu123456@qq.com
 * @date 2022年03月26日 14时38分15秒
 */
@Mapper
public interface ClassesInfoDao extends BaseMapper<ClassesInfo> {

	int queryListTotal(Map<String, Object> paras);

	List<ClassesInfoWebDto> queryList(Map<String, Object> paras);

	/**
	 * 查询某老师所教班级信息
	 * @param teacherId
	 * @return
	 */
	List<ClassesInfo> queryTeacherClasses(Long teacherId);

	/**
	 * 查询某老师还未任教的班级信息
	 * @param paras
	 * @return
	 */
	List<ClassesInfo> queryNotExistsClasses(Map<String, Object> paras);

	/**
	 * 查询学生就读分层班信息
	 * @param studentId
	 * @return
	 */
	List<ClassesInfo> queryClassesForStudent( @Param("studentId")Long studentId,@Param("type")Integer type);

	List<AppStudentInfo> bindingStudent(AppBindingStudentReq appBindingStudentReq);
}
